/**   
 * Copyright © 2021 eSunny Info. Tech Ltd. All rights reserved.
 * 
 * 功能描述： 紧急联系人相关信息
 * @Package: com.yl.staff.controller 
 * @author: Bai   
 * @date: 2021年1月19日 下午3:20:08 
 */
package com.yl.staff.controller;

import java.util.List;

import org.mybatis.spring.annotation.MapperScan;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;

import com.yl.staff.dao.MapEmergencyContact;
import com.yl.staff.model.BeanEmergencyContact;

import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;

/**   
* Copyright: Copyright (c) 2021 云邻信息科技
* 
* @ClassName: EmergencyContactController.java
* @Description: 紧急联系人相关信息
*
* @version: v1.1.0
* @author: Bai
* @date: 2021年1月19日 下午3:20:08 
*
* Modification History:<br>
* Date         Author          Version            Description
*---------------------------------------------------------*<br>
* 2021年1月19日     Bai          	   v1.0.0                                    新建 <br>
* 2021年1月19日     Bai          	   v1.1.0                                    新增 添加紧急联系人信息
*  												  addEmergencyContact(BeanEmergencyContact bec)
*  												     新增  根据数据编号更新紧急联系人信息
*  												  upEmergencyContactById(BeanEmergencyContact bec) <br>
*/
/*
 * 功能列表：
* 	Date         Author          Method            				 Description
*	---------------------------------------------------------------------*<br>
*	2020年01月19日     Bai            findEmergencyContenctsByStaffCode(String staffCode)        		根据员工编号获取紧急联系人信息
* 	2020年01月19日     Bai            findAll() 														获取所有紧急联系人信息
* 	2020年01月19日     Bai            findById(Integer id)											根据员工编号查找紧急联系人信息
*  	2020年01月20日     Bai            addEmergencyContact(BeanEmergencyContact bec)					添加紧急联系人信息
*   2020年01月20日     Bai            upEmergencyContactById(BeanEmergencyContact bec)  				根据数据编号更新紧急联系人信息
 * */
@RestController
@MapperScan("com.yl.staff.dao")
@Api(value = "基础数据接口", tags = "紧急联系人信息相关")
public class EmergencyContactController {
	/*
	 * emergency-contact 数据接口对象
	 * */
	@Autowired
	public MapEmergencyContact mapEmergencyContact;
	/**
	 * 
	* @Function: EmergencyContactController.java
	* @Description: 根据员工编号获取紧急联系人信息
	*
	* @param:String staffCode 员工编号
	* @return：List<BeanEmergencyContact> 紧急联系人集合 OR [] 空集合
	* @throws：异常描述
	*
	* @version: v1.0.0
	* @author: Bai
	* @date: 2021年1月19日 下午3:29:15 
	*
	* Modification History:<br>
	* Date         Author          Version            Description
	*---------------------------------------------------------*<br>
	* 2021年1月19日     Bai           v1.0.0               	新建 <br>
	 */
	@RequestMapping(value = "/staffEmergencyContencts",method = RequestMethod.POST)
	@ApiOperation(value = "根据员工编号获取紧急联系人信息")
	public List<BeanEmergencyContact> findEmergencyContenctsByStaffCode(@ApiParam(name="staffCode",value="员工编号",required = true) @RequestParam(name="staffCode")String staffCode){
		return mapEmergencyContact.selectByStaffCode(staffCode);
	}
	/**
	 * 
	* @Function: EmergencyContactController.java
	* @Description: 获取所有紧急联系人信息
	*
	* @param:无
	* @return：List<BeanEmergencyContact> 紧急联系人集合 OR [] 空集合
	* @throws：异常描述
	*
	* @version: v1.0.0
	* @author: Bai
	* @date: 2021年1月19日 下午3:39:44 
	*
	* Modification History:<br>
	* Date         Author          Version            Description
	*---------------------------------------------------------*<br>
	* 2021年1月19日     Bai             v1.0.0                                    新建 <br>
	 */
	@RequestMapping(value = "/emergencyContencts",method = RequestMethod.GET)
	@ApiOperation(value = "获取所有紧急联系人信息")
	public List<BeanEmergencyContact> findAll(){
		return mapEmergencyContact.selectAll();
	}
	/**
	 * 
	* @Function: EmergencyContactController.java
	* @Description: 根据数据编号获取紧急联系人信息
	*
	* @param:Integer id 数据编号
	* @return：BeanEmergencyContact 紧急联系人信息实体
	* @throws：异常描述
	*
	* @version: v1.0.0
	* @author: Bai
	* @date: 2021年1月19日 下午3:46:33 
	*
	* Modification History:<br>
	* Date         Author          Version            Description
	*---------------------------------------------------------*<br>
	* 2021年1月19日     Bai             v1.0.0                                   新建<br>
	 */
	@RequestMapping(value = "/emergencyContenctById",method = RequestMethod.POST)
	@ApiOperation(value = "根据数据编号获取紧急联系人信息")
	public BeanEmergencyContact findById(@ApiParam(name="id",value="数据编号",required = true) @RequestParam(name="id")Integer id) {
		return mapEmergencyContact.selectById(id);
	}
	/**
	 * 
	* @Function: EmergencyContactController.java
	* @Description: 添加紧急联系人信息
	*
	* @param: BeanEmergencyContact
	* @return：boolean true OR false
	* @throws：异常描述
	*
	* @version: v1.0.0
	* @author: Bai
	* @date: 2021年1月20日 下午3:19:06 
	*
	* Modification History:<br>
	* Date         Author          Version            Description
	*---------------------------------------------------------*<br>
	* 2021年1月20日     Bai             v1.0.0               	新建 <br>
	 */
	@RequestMapping(value = "/addEmergencyContenct",method = RequestMethod.POST)
	@ApiOperation(value = "添加紧急联系人信息")
	@ApiImplicitParams({
		@ApiImplicitParam(paramType="query",name="id",dataType="int",required=false,value="此参数禁止填写"),
		@ApiImplicitParam(paramType="query",name="staffCode",dataType="String",required=true,value="员工编号"),
		@ApiImplicitParam(paramType="query",name="contactName",dataType="String",required=true,value="联系人姓名"),
		@ApiImplicitParam(paramType="query",name="contactPhone",dataType="String",required=true,value="联系人电话"),
		@ApiImplicitParam(paramType="query",name="contactRelationship",dataType="String",required=true,value="紧急联系人关系")
	})
	public boolean addEmergencyContact(BeanEmergencyContact bec) {
		return mapEmergencyContact.insertInto(bec);
	}
	/**
	 * 
	* @Function: EmergencyContactController.java
	* @Description: 根据数据编号修改紧急联系人信息
	*
	* @param:BeanEmergencyContact 紧急联系人信息实体
	* @return：boolean true OR false
	* @throws：异常描述
	*
	* @version: v1.0.0
	* @author: Bai
	* @date: 2021年1月20日 下午3:24:53 
	*
	* Modification History:<br>
	* Date         Author          Version            Description
	*---------------------------------------------------------*<br>
	* 2021年1月20日     Bai             v1.0.0                                  新建 <br>
	 */
	@RequestMapping(value = "/upEmergencyContenctById",method = RequestMethod.POST)
	@ApiOperation(value = "根据数据编号修改紧急联系人信息")
	@ApiImplicitParams({
		@ApiImplicitParam(paramType="query",name="id",dataType="int",required=true,value="数据编号"),
		@ApiImplicitParam(paramType="query",name="staffCode",dataType="String",required=true,value="员工编号"),
		@ApiImplicitParam(paramType="query",name="contactName",dataType="String",required=true,value="联系人姓名"),
		@ApiImplicitParam(paramType="query",name="contactPhone",dataType="String",required=true,value="联系人电话"),
		@ApiImplicitParam(paramType="query",name="contactRelationship",dataType="String",required=true,value="紧急联系人关系")
	})
	public boolean upEmergencyContactById(BeanEmergencyContact bec) {
		return mapEmergencyContact.updateById(bec);
	}
}
